<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:p="http://primefaces.org/ui"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ezcomp="http://java.sun.com/jsf/composite/ezcomp">
    <body>

        <ui:composition template="./../templates/principalTemplate.xhtml">

            <ui:define name="content">
                <h:form>
                    
                    <p:panel header="Crear Consumidor">
                        <p:messages id="messages" showDetail="true" autoUpdate="true" closable="true" />
                        <h:panelGrid columns="3">
                            <p:outputLabel value="Nombre" for="txtNombre"/>
                            <p:inputText id="txtNombre" maxlength="50" required="true" value="#{crearConsumidor.nombre}"/>
                            <p:message for="txtNombre"/>

                            <p:outputLabel value="Descripción" for="txtDescripcion"/>
                            <p:inputText id="txtDescripcion" maxlength="200" value="#{crearConsumidor.descripcion}" />
                            <p:message for="txtDescripcion"/>

                            <h:panelGroup />
                            <p:selectCheckboxMenu id="slcChkCategorias" value="#{crearConsumidor.categoriasSeleccionadas}" 
                                                  label="Categorias" filter="true" filterMatchMode="startsWith">
                                <f:selectItems value="#{crearCatCtrl.categorias}" />
                            </p:selectCheckboxMenu>
                            <h:panelGroup />

                            <p:outputLabel value="Tipo:" for="slcTipo"/>
                            <p:selectOneMenu id="slcTipo" required="true" value="#{crearConsumidor.tipo}">
                                <f:selectItems value="#{crearConsumidor.tipos}"/>
                                <p:ajax update="dtsPersona,dtsVivienda" listener="#{crearConsumidor.manejadorSeleccionoTipo()}" />
                            </p:selectOneMenu>
                            <p:message for="slcTipo"/>
                        </h:panelGrid>
                        
                        <p:outputPanel id="dtsPersona">
                            <h:panelGrid id="pnlPersona" columns="3" rendered="#{crearConsumidor.esPersona}">
                                <p:outputLabel value="Persona" for="slcPersona" />
                                <p:selectOneMenu id="slcPersona" value="#{crearConsumidor.personaSelec}">
                                    <f:selectItems value="#{crearConsumidor.personas}" />
                                </p:selectOneMenu>
                                <p:message for="slcPersona" />
                            </h:panelGrid>
                        </p:outputPanel>
                        
                        <p:outputPanel id="dtsVivienda">
                            <h:panelGrid id="pnlVivienda" rendered="#{crearConsumidor.esVivienda}">
                                <ezcomp:capturaDireccion pojo="#{crearConsumidor.direccion}" />
                                <p:selectCheckboxMenu id="slcChkHabitantes" label="Habitantes" filter="true" filterMatchMode="startsWith">
                                    <f:selectItems />
                                </p:selectCheckboxMenu>
                            </h:panelGrid>
                        </p:outputPanel>

                        <h:panelGrid columns="2" >
                            <p:commandButton id="btnCrear" value="Crear" type="button" onclick="confCrear.show();" />
                            <p:commandButton id="btnCancelar" value="Cancelar" 
                                             actionListener="#{crearConsumidor.cancelar()}" 
                                             update="txtNombre,txtDescripcion,slcChkCategorias,slcTipo,dtsPersona,dtsVivienda" />
                        </h:panelGrid>
                        
                        <p:confirmDialog message="¿Está seguro de enviar los datos?" header="Crear usuario" 
                                         widgetVar="confCrear" severity="info">
                            <p:commandButton value="Aceptar" update="@form" oncomplete="confCrear.hide();" actionListener="#{crearConsumidor.guardar()}" />
                            <p:commandButton value="Cancelar" onclick="confCrear.hide();" />
                        </p:confirmDialog>
                        
                    </p:panel>
                </h:form>
            </ui:define>
        </ui:composition>

    </body>
</html>
